Service chains define a set of service functions (e.g., firewalls, Deep Packet Inspection, etc.), and their order (service1→service2) to be applied to selective packets as they are forwarded through a network. The order in which services are applied is predetermined through an orchestration function and that order is mapped into each network node that is involved in the forwarding of packets through a given service chain. The mapping of forwarding state to service chain structure is referred to as a service path.
The service path for a given service chain may be unidirectional or bidirectional dependent upon whether one or more of the service functions in the chain hold state information that needs to be maintained in the forward and reverse packet forwarding paths.